<?php
/**
 * 验证记录数量
 * Created by PhpStorm.
 * Author: 张志祥
 * QQ: 786811688
 * Phone: 13306281319
 * Date: 2017/5/21
 * Time: 9:55
 */

// 机构流水表交易所记录数量 = 历史订单表记录数量（非全部赠金） + 异常订单表记录数量（非全部赠金） * 2
// 机构流水表手续费记录数量 = （历史订单表记录数量（非全部赠金）  + 异常订单表记录数量（非全部赠金） * 2）* 分配手续费的机构类型数量
// 客户流水表下单记录数量 = 历史订单表记录数量 + 异常订单表记录数量
// 客户流水表平仓记录数量 = 历史订单表盈利和平的记录数量
// 机构流水表平仓记录数量 = 历史订单表盈利的记录数量 + 亏损（非全部赠金）的记录数量

include 'pub.php'; // 公共函数

// 分配返点的机构数量
$fee_num = 0;
$t = 0;
$fee_jg = json_decode($gpstr->get('u_service_fee')['val'], true);
foreach ($fee_jg as $v) {
    // 分配比例大于0的计数
    if ($v){
        $fee_num += 1;
        $t += $v;
    }
}
if ($t < 100) {
    // 没有全部分配掉的，再加上运营商的
    $fee_num += 1;
}

// 交易所id
$sql = 'SELECT id FROM zzx_jg_company WHERE jg_type = 1';
$res = $my_conn->query($sql);
$jys_id = mysqli_fetch_array($res, MYSQLI_ASSOC)['id'];


#机构流水表记录数量
$sql = "SELECT Count(zzx_balanceinfo_jg.id) as num FROM zzx_balanceinfo_jg";

#机构流水表记录交易所
$where = ' WHERE zzx_balanceinfo_jg.jid = '.$jys_id; // 交易所
$res=$my_conn->query($sql.$where);
$jg_lsb_jys = mysqli_fetch_array($res, MYSQLI_ASSOC)['num'];
echo "机构流水表交易所记录数量：$jg_lsb_jys\n";

#机构流水表，手续费记录数量
$where = ' WHERE zzx_balanceinfo_jg.dealtype = 3 or zzx_balanceinfo_jg.dealtype = 5'; // 手续费
$res=$my_conn->query($sql.$where);
$jg_lsb_sxf = mysqli_fetch_array($res, MYSQLI_ASSOC)['num'];
echo "机构流水表手续费记录数量：$jg_lsb_sxf\n";

#机构流水表，平仓记录数量
$where = ' WHERE zzx_balanceinfo_jg.dealtype = 4'; // 平仓
$res=$my_conn->query($sql.$where);
$jg_lsb_pc = mysqli_fetch_array($res, MYSQLI_ASSOC)['num'];
echo "机构流水表手续费记录数量：$jg_lsb_pc\n";


#客户流水表，下单：dealtype = 3，平仓：dealtype = 4
$sql = "SELECT Count(zzx_balanceinfo_kh.id) as num FROM zzx_balanceinfo_kh";

// 下单
$where = ' WHERE zzx_balanceinfo_kh.dealtype = 3';
$res=$my_conn->query($sql.$where);
$kh_lsb_xd = mysqli_fetch_array($res, MYSQLI_ASSOC)['num'];
echo "客户流水表下单数量：$kh_lsb_xd\n";

// 平仓
$where = ' WHERE zzx_balanceinfo_kh.dealtype = 4';
$res=$my_conn->query($sql.$where);
$kh_lsb_pc = mysqli_fetch_array($res, MYSQLI_ASSOC)['num'];
echo "客户流水表平仓数量：$kh_lsb_pc\n";


#历史订单表，盈利：ploss > 0，平：ploss = 0，亏损：ploss < 0
$sql = "SELECT Count(zzx_order_history.oid) as num FROM zzx_order_history";
$res=$my_conn->query($sql);
$history_num = mysqli_fetch_array($res, MYSQLI_ASSOC)['num'];
echo "历史订单表记录数量：$history_num\n";

// 历史订单表，去除赠金记录
$where = ' WHERE money != gift';
$res=$my_conn->query($sql.$where);
$h_num_only = mysqli_fetch_array($res, MYSQLI_ASSOC)['num'];
echo "历史订单表记录数量（非全部赠金）：$h_num_only\n";

// 历史订单表，盈利和平的
$where = ' WHERE zzx_order_history.ploss >= 0';
$res=$my_conn->query($sql.$where);
$history_gt = mysqli_fetch_array($res, MYSQLI_ASSOC)['num'];
echo "历史订单表盈利和平的数量：$history_gt\n";

// 历史订单表，盈利和亏损
$where = ' WHERE zzx_order_history.ploss != 0';
$res=$my_conn->query($sql.$where);
$history_gl = mysqli_fetch_array($res, MYSQLI_ASSOC)['num'];
echo "历史订单表盈利和亏损的数量：$history_gl\n";

// 历史订单表，盈利
$where = ' WHERE zzx_order_history.ploss > 0';
$res=$my_conn->query($sql.$where);
$h_gt_only = mysqli_fetch_array($res, MYSQLI_ASSOC)['num'];
echo "历史订单表盈利的数量：$h_gt_only\n";

// 历史订单表，亏损，去除赠金
$where = ' WHERE zzx_order_history.ploss < 0 AND money != gift';
$res=$my_conn->query($sql.$where);
$h_lt_only = mysqli_fetch_array($res, MYSQLI_ASSOC)['num'];
echo "历史订单表亏损的数量（非全部赠金）：$h_lt_only\n";


// 异常订单表
$sql = "SELECT Count(e.oid) as num FROM zzx_order_error as e";
$res=$my_conn->query($sql);
$e_num = mysqli_fetch_array($res, MYSQLI_ASSOC)['num'];
echo "历史订单表记录数量：$e_num\n";

// 异常订单表，去除赠金
$sql = "SELECT Count(e.oid) as num FROM zzx_order_error as e WHERE money != gift";
$res=$my_conn->query($sql);
$e_num_only = mysqli_fetch_array($res, MYSQLI_ASSOC)['num'];
echo "历史订单表记录数量（非全部赠金）：$e_num_only\n";

// 验证记录数量 ###################################################################
echo "\n验证：\n";

// 机构流水表交易所记录数量 = 历史订单表记录数量（非全部赠金） + 异常订单表记录数量（非全部赠金） * 2
if ($jg_lsb_jys == $h_num_only + $e_num_only * 2) {
    echo "机构流水表交易所记录数量 = 历史订单表记录数量（非全部赠金） + 异常订单表记录数量（非全部赠金） * 2：ok\n";
} else {
    echo "机构流水表交易所记录数量$jg_lsb_jys = 历史订单表记录数量（非全部赠金）$h_num_only + 异常订单表记录数量（非全部赠金）$e_num_only * 2：error\n";
}

// 机构流水表手续费记录数量 = （历史订单表记录数量（非全部赠金）  + 异常订单表记录数量（非全部赠金） * 2）* 分配手续费的机构类型数量
if ($jg_lsb_sxf == ($h_num_only + $e_num_only  * 2) * $fee_num) {
    echo "机构流水表手续费记录数量 = （历史订单表记录数量（非全部赠金） + 异常订单表记录数量（非全部赠金） * 2） * {$fee_num}：ok\n";
} else {
    echo "机构流水表手续费记录数量$jg_lsb_sxf = （历史订单表记录数量（非全部赠金）$h_num_only + 异常订单表记录数量（非全部赠金）$e_num_only * 2） * {$fee_num}：error\n";
}

// 客户流水表下单记录数量 = 历史订单表记录数量 + 异常订单表记录数量
if ($kh_lsb_xd == $history_num + $e_num) {
    echo "客户流水表下单记录数量 = 历史订单表记录数量 + 异常订单表记录数量：ok\n";
} else {
    echo "客户流水表下单记录数量$kh_lsb_xd = 历史订单表记录数量$history_num  + 异常订单表记录数量$e_num ：error\n";
}

// 客户流水表平仓记录数量 = 历史订单表盈利和平的记录数量
if ($kh_lsb_pc == $history_gt) {
    echo "客户流水表平仓记录数量 = 历史订单表盈利和平的记录数量：ok\n";
} else {
    echo "客户流水表平仓记录数量$kh_lsb_pc = 历史订单表盈利和平的记录数量$history_gt ：error\n";
}

// 机构流水表平仓记录数量 = 历史订单表盈利的记录数量 + 亏损（非全部赠金）的记录数量
if ($jg_lsb_pc == $h_gt_only + $h_lt_only) {
    echo "机构流水表平仓记录数量 = 历史订单表盈利的记录数量 + 亏损（非全部赠金）的记录数量：ok\n";
} else {
    echo "机构流水表平仓记录数量$jg_lsb_pc = 历史订单表盈利的记录数量$h_gt_only 亏损（非全部赠金）的记录数量$h_lt_only ：error\n";
}

echo "\n\n";
